﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.UI;

namespace Ue.Infrastructure.UI.SkinnedControls.PartAutoMappings
{
    public interface IPartAutoMapping
    {
        IMappingControlProvide Provide { get; }

        IEnumerable<MappingEntry> GetMappings<T>();

        IPartAutoMapping RegisterMapping<T>(string entityPropertyName,string controlName);

        IPartAutoMapping RegisterMapping<T>( string entityPropertyName,string controlName, string formatString);

        T ToPart<T>(T part);

        void ToView<T>(T part);
    }
}
